//
// Created by Soar Qin on 2017/8/18.
// Copyright (c) 2017 Soar Qin. All rights reserved.
//

#pragma once

#include <cstdint>
#include <cstdlib>
#include <cstring>
#include <memory>
#include <string>
#include <utility>
#include <algorithm>
#include <functional>

#define DISABLE_CLASS_COPY(name) public: \
    name(name&) = delete; \
    name(name&&) = delete; \
    name& operator=(const name& re) = delete; \
    name&& operator=(name&& re) noexcept = delete
